<?php

class StatusResource extends BaseResource
{
    public function initialize()
    {
        $this->before_filters->skip('specified_user_must_be_authenticated_user',
                                    array('only' => 'get'));
    }
    
    public function get()
    {
        // si le statut n'est pas trouvé, Stato retournera
        // automatiquement un code 404
        $status = Status::$objects->get($this->params['id']);
        $this->responds($status, 200);
    }
    
    public function put()
    {
        $status = Status::$objects->get($this->params['id']);
        $status->text = $this->params['text'];
        
        if ($status->save()) {
            $status->reload();
            $this->responds($status, 200);
        } else {
            $this->responds_detailed_error($status->errors, 400);
        }
    }
    
    public function delete()
    {
        // si le statut n'est pas trouvé, Stato retournera
        // automatiquement un code 404
        $status = Status::$objects->get($this->params['id']);
        $status->delete();
        $this->responds_deleted(204);
    }
}

?>